package com.krtech.wecard.module.pub.controller;

import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.krtech.wecard.framework.aop.Metrics;
import com.krtech.wecard.framework.utils.LoginUtil;
import com.krtech.wecard.module.pub.dto.*;
import com.krtech.wecard.module.pub.entity.TnNotify;
import com.krtech.wecard.module.pub.entity.TnNotifyUser;
import com.krtech.wecard.module.pub.mapper.TnNotifyMapper;
import com.krtech.wecard.module.pub.service.TnNotifyService;
import com.krtech.wecard.module.pub.service.TnNotifyUserService;
import com.krtech.wecard.module.sys.entity.SysUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.text.StringEscapeUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.stream.Collectors;

@Metrics
@RestController
@RequestMapping("/pub/notify")
@Api(value = "通知公告",tags = "通知公告")
public class NotifyController {
    @Autowired
    TnNotifyService notifyService;

    @Autowired
    private TnNotifyUserService notifyUserService;

    @Autowired
    private TnNotifyMapper notifyMapper;

    /**
     *
     */
    @ApiOperation(value = "查询消息数量")
    @GetMapping("/getNoReadInfo")
    public Integer getNoReadInfo(NotifySearchDto dto) {
        SysUser userInfo = LoginUtil.getUserInfo();
        dto.setUserId(userInfo.getUserId());

        return notifyService.getNoReadInfo(dto);
    }

    /**
     * 查询某个模块
     *
     * @param dto
     * @param page
     * @return
     */
    @ApiOperation(value = "通知公告查询,我收到的消息")
    @GetMapping
    public IPage<MyTnNotify> search(NotifySearchDto dto, Page<TnNotify> page) {
        SysUser userInfo = LoginUtil.getUserInfo();
        dto.setUserId(userInfo.getUserId());

        return notifyService.search(dto, page);
    }

    @ApiOperation(value = "通知公告查询,我收到的消息")
    @GetMapping("/searchAll")
    public IPage<MyTnNotify> searchAll(NotifySearchDto dto, Page<TnNotify> page) {
//        SysUser userInfo = LoginUtil.getUserInfo();
//        dto.setUserId(userInfo.getUserId());

        return notifyService.search(dto, page);
    }

    /**
     * 获得我发送的消息
     * @param page
     * @return
     */
    @ApiOperation(value = "通知公告查询,我发送的消息")
    @GetMapping("/getMySendMsg")
    public Page<TnNotify> getMySendMsg(Page<TnNotify> page,String keyword) {
        SysUser userInfo = LoginUtil.getUserInfo();
        QueryWrapper<TnNotify> wrapper = new QueryWrapper<>();
        wrapper.eq(TnNotify.COL_NOTIFY_SENDER_USER_ID,userInfo.getUserId());

        if (StrUtil.isNotEmpty(keyword)){
            wrapper.like(TnNotify.COL_NOTIFY_TITLE,keyword)
                    .or()
                    .like(TnNotify.COL_NOTIFY_CONTENT,keyword)
                    .or()
                    .like(TnNotify.COL_NOTIFY_ABSTRACT,keyword)
                    .or()
                    .like(TnNotify.COL_NOTIFY_SENDER_USER_NAME,keyword);
        }
        wrapper.orderByDesc(TnNotify.COL_NOTIFY_ID);

        return notifyService.page(page,wrapper);
    }

    @ApiOperation(value = "通知公告新增")
    @PostMapping
//    @Inner(value = false)
    public TnNotify add(@RequestBody @Validated TnNotify dto) {
        notifyService.add(dto);
        return dto;
    }

    @ApiOperation(value = "通知公告批量新增")
    @PostMapping("/batch")
//    @Inner(value = false)
    public void addBatch(@RequestBody @Validated List<TnNotifyPushDto> dtoList) {
        for (TnNotifyPushDto dto : dtoList) {
            this.add(dto);
        }
    }

    @ApiOperation(value = "通知公告已读回执")
    @PutMapping("/read/{notifyId}")
//    @Inner(value = false)
    public void userRead(@PathVariable Long notifyId) {
        SysUser userInfo = LoginUtil.getUserInfo();
        //todo 发现了两条
        TnNotifyUser notifyUser = notifyUserService.getOne(new QueryWrapper<TnNotifyUser>().eq(TnNotifyUser.COL_NOTIFY_ID, notifyId).eq(TnNotifyUser.COL_USER_ID, userInfo.getUserId()));


        notifyService.userRead(notifyUser.getNotifyUserId());
    }



    @ApiOperation(value = "通知公告-一键已读")
    @PostMapping("/read/userReadAll")
//    @Inner(value = false)
    public Boolean userReadAll(@RequestBody NotifySearchDto dto) {
        SysUser userInfo = LoginUtil.getUserInfo();
        dto.setUserId(userInfo.getUserId());

        List<MyTnNotify> myNotifyList = notifyMapper.getMyNotifyList(dto);
        List<Long> notifyUserIdList = myNotifyList.stream().map(MyTnNotify::getNotifyUserId).collect(Collectors.toList());
        if (notifyUserIdList.size() > 0){
            List<TnNotifyUser> notifyUserList = notifyUserService.list(new QueryWrapper<TnNotifyUser>().in(TnNotifyUser.COL_NOTIFY_USER_ID, notifyUserIdList));
            notifyUserList.forEach(notifyUser->{
                notifyUser.setNotifyUserAlreadyRead(true);
            });
            notifyUserService.updateBatch(notifyUserList);

            //更新已读数量
            TnNotify tnNotify = notifyMapper.selectById(notifyUserList.get(0).getNotifyId());
            tnNotify.setReadCount(tnNotify.getReadCount() + notifyUserList.size());
            notifyMapper.updateById(tnNotify);
        }
        return true;
    }

    @ApiOperation(value = "通知公告用户删除")
    @DeleteMapping("/{id}")
    public void userDelete(@PathVariable Long notifyUserId) {
        notifyUserService.removeById(notifyUserId);
    }

    /**
     *
     * 管理员删除某条消息
     * @param notifyId
     */
    @ApiOperation(value = "通知公告管理员删除")
    @DeleteMapping("/admin/{notifyId}")
    public Boolean adminDelete(@PathVariable Long notifyId) {
        return notifyService.adminDelete(notifyId);
    }

    @ApiOperation(value = "用户自己一键清空自己的消息")
    @DeleteMapping("/user/{userId}")
    public void userDeleteAll(@PathVariable Long userId) {
        notifyUserService.remove(new QueryWrapper<TnNotifyUser>().eq(TnNotifyUser.COL_USER_ID,userId));
    }

    /**
     * 根据notify_id查询这个通知有多少人已读
     */
    @ApiOperation(value = "根据notify_id查询这个通知有多少人已读")
    @GetMapping("/getAlreadyReadCountByNotifyid")
    public Integer getAlreadyReadCountByNotifyid(MyTnNotify myTnNotify) {
        int count = notifyUserService.count(new QueryWrapper<TnNotifyUser>().eq(TnNotifyUser.COL_NOTIFY_ID, myTnNotify.getNotifyId())
                .eq(TnNotifyUser.COL_NOTIFY_USER_ALREADY_READ, myTnNotify.getNotifyUserAlreadyRead()));
        return count;
    }

    /**
     * 消息详情 + 接收人员 + 阅读情况
     *
     * @param notifyId 消息id
     * @return NotifyUserReadDto
     */
    @ApiOperation(value = "消息详情 + 接收人员 + 阅读情况")
    @GetMapping("/getNotifyUserRead")
    public NotifyUserReadDto getNotifyUserRead(Long notifyId) {
        TnNotify notify = notifyService.getById(notifyId);
        NotifyUserReadDto notifyUserReadDto = new NotifyUserReadDto();
        BeanUtil.copyProperties(notify,notifyUserReadDto);
        List<TnNotifyUser> notifyUserList = notifyUserService.list(new QueryWrapper<TnNotifyUser>().eq(TnNotifyUser.COL_NOTIFY_ID, notifyId));
        notifyUserReadDto.setNotifyUserList(notifyUserList);
        notifyUserReadDto.setNotifyContent(StringEscapeUtils.unescapeHtml4(notifyUserReadDto.getNotifyContent()));
        return notifyUserReadDto;
    }


    /**
     * 发送通知公告
     */
//    private void example(){
//        //发送到消息中心
//
//
//        TnNotifyPushDto notifyPushDto = new TnNotifyPushDto();
//        //标题
//        notifyPushDto.setNotifyTitle("关于成立德育工作领导小组的通知");
//        //摘要
//        notifyPushDto.setNotifyAbstract("加强德育，提高学生综合素质。");
//        //落款
//        notifyPushDto.setNotifyFallPaper("办公室");
//        //发送人
//        notifyPushDto.setNotifySenderUserName("李主任");
//        //内容
//        notifyPushDto.setNotifyContent("<div aria-describedby=\"placeholder-7ca00\" class=\"notranslate public-DraftEditor-content\" contenteditable=\"true\" spellcheck=\"false\" style=\"outline: none; user-select: text; white-space: pre-wrap; overflow-wrap: break-word;\" role=\"textbox\"><div data-contents=\"true\"><div class=\"bfa-center\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"fdkgl-0-0\"><div data-offset-key=\"fdkgl-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"fdkgl-0-0\"><br data-text=\"true\"></span></div></div><div class=\"bfa-center\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bc17o-0-0\"><div data-offset-key=\"bc17o-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bc17o-0-0\" style=\"font-weight: bold; color: rgb(192, 57, 43); font-size: 30px;\"><span data-text=\"true\">腾讯微卡大学文件</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1hm8m-0-0\"><div data-offset-key=\"1hm8m-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1hm8m-0-0\"><br data-text=\"true\"></span></div></div><div class=\"bfa-center\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bebrk-0-0\"><div data-offset-key=\"bebrk-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bebrk-0-0\" style=\"color: rgb(192, 57, 43); font-size: 14px; background-color: rgb(255, 255, 255);\"><span data-text=\"true\">办公室【2020】3号</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"di5ko-0-0\" contenteditable=\"false\"><div class=\"bf-media\"><div draggable=\"true\" class=\"bf-image\" style=\"float: left;\"><div style=\"position: relative; display: inline-block;\"><img src=\"//wxpublic-1251448646.file.myqcloud.com/school_logo/676b041a4fecf7594e83a38cc0a8c74c.png\" alt=\"676b041a4fecf7594e83a38cc0a8c74c.png\"><div class=\"bf-pre-csize undefined\"></div></div></div><div class=\"clearfix\" style=\"clear: both; height: 0px; line-height: 0; float: none;\"></div></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"8u74l-0-0\"><div data-offset-key=\"8u74l-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"8u74l-0-0\"><br data-text=\"true\"></span></div></div><div class=\"bfa-center\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"e4qsl-0-0\"><div data-offset-key=\"e4qsl-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"e4qsl-0-0\" style=\"font-weight: bold; font-size: 28px;\"><span data-text=\"true\">关于成立德育工作领导小组的通知</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bb4pj-0-0\"><div data-offset-key=\"bb4pj-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bb4pj-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"92eiv-0-0\"><div data-offset-key=\"92eiv-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"92eiv-0-0\"><span data-text=\"true\">各处室、各专业部：</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"e6mlh-0-0\"><div data-offset-key=\"e6mlh-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"e6mlh-0-0\"><br data-text=\"true\"></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1eq6u-0-0\"><div data-offset-key=\"1eq6u-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1eq6u-0-0\"><span data-text=\"true\">为使学校的德育工作落到实处，不断提升学生的道德意识，努力培养学生的良好行为习惯，有效促进学校德育工作再创新局面，学校决定成立德育工作领导小组，具体机构和职责如下：</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"92a0u-0-0\"><div data-offset-key=\"92a0u-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"92a0u-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"49qg3-0-0\"><div data-offset-key=\"49qg3-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"49qg3-0-0\" style=\"font-weight: bold;\"><span data-text=\"true\">一、德育工作领导小组组成</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"5e6mj-0-0\"><div data-offset-key=\"5e6mj-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"5e6mj-0-0\"><span data-text=\"true\">组长：李明明校长</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"2243s-0-0\"><div data-offset-key=\"2243s-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"2243s-0-0\"><span data-text=\"true\">副组长：张华、王强</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"f00u1-0-0\"><div data-offset-key=\"f00u1-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"f00u1-0-0\"><span data-text=\"true\">组员：李建国</span></span><span data-offset-key=\"f00u1-0-1\" style=\"color: rgb(38, 38, 38); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">、张芳、邓军、黄月</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"9o01a-0-0\"><div data-offset-key=\"9o01a-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"9o01a-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1a1eu-0-0\"><div data-offset-key=\"1a1eu-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1a1eu-0-0\" style=\"font-weight: bold; color: rgb(38, 38, 38); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">二、学校德育工作领导小组职责</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"ebhuc-0-0\"><div data-offset-key=\"ebhuc-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"ebhuc-0-0\" style=\"background-color: rgb(255, 255, 255); color: rgb(38, 38, 38);\"><span data-text=\"true\">1、 </span></span><span data-offset-key=\"ebhuc-0-1\" style=\"background-color: rgb(255, 255, 255); color: rgb(34, 34, 34);\"><span data-text=\"true\">坚持全面贯彻党的教育方针，保证德育为首的地位，积极开展“文明学校”、“文化校园”等德育活动，致力创建德育工作特色学校。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"ceijg-0-0\"><div data-offset-key=\"ceijg-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"ceijg-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">2、加强调查研究，认真制定学校德育工作规划及年度工作计划，并做好总结工作。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"e7lvl-0-0\"><div data-offset-key=\"e7lvl-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"e7lvl-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">3、指导各专业部成立德育教育工作，组织学习有关学校德育工作的法律法规及文件并贯彻实施，组织开展德育科研课题研究。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"erk8d-0-0\"><div data-offset-key=\"erk8d-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"erk8d-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">4、组织职能部门、年级、班级实施德育工作计划，并对实施情况进行检查、反馈和总结。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"65pem-0-0\"><div data-offset-key=\"65pem-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"65pem-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">5、总结经验，树立典型。定期对全体教师进行德育教育业务培训，每学期组织召开一次德育（班主任）工作经验交流会或专题研讨会，不断提高德育工作质量，组织推荐评选先进德育工作者、优秀班主任。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"4u0v7-0-0\"><div data-offset-key=\"4u0v7-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"4u0v7-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">6、每学期至少召开二次德育领导小组工作会议，每学期召开一次德育工作会议，及时研究德育工作的新情况、新问题，肯定成绩，指明方向，不断明确德育工作要求，协调工作，形成合力，创造良好的育人环境。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"fkfj7-0-0\"><div data-offset-key=\"fkfj7-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"fkfj7-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">7、对教职工在教书育人、管理育人、服务育人等方面的表现进行检查和考评，并建立档案。</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"d02qe-0-0\"><div data-offset-key=\"d02qe-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"d02qe-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"a55ej-0-0\"><div data-offset-key=\"a55ej-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"a55ej-0-0\" style=\"font-weight: bold; color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">三、各专业部德育工作职责</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"it2a-0-0\"><div data-offset-key=\"it2a-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"it2a-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">1、根据学校德育工作规划和学生处德育工作计划制定本专业部的学期工作计划，并组织实施。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"7ro1-0-0\"><div data-offset-key=\"7ro1-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"7ro1-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">2、组织本专业部成员制定个人发展计划和工作计划（班务计划、教学计划等），并对执行情况进行检查监督。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bvk7n-0-0\"><div data-offset-key=\"bvk7n-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bvk7n-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">3、每两周召开一次工作例会，组织专业部人员进行德育工作交流、总结、学习与研讨。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"fh080-0-0\"><div data-offset-key=\"fh080-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"fh080-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">4、正常开展听课、评课活动。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"51dpo-0-0\"><div data-offset-key=\"51dpo-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"51dpo-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">5、对本组成员的工作进行指导、检查、记录。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"2fo35-0-0\"><div data-offset-key=\"2fo35-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"2fo35-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">6、参与严重违纪学生的调查、处理和教育。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"dp7nb-0-0\"><div data-offset-key=\"dp7nb-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"dp7nb-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">7、组织开展德育科研工作，积极创办各种小型杂志、通讯等。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"9ngiq-0-0\"><div data-offset-key=\"9ngiq-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"9ngiq-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">8、负责本专业部人员的常规考勤和考核，并向学生处提出奖惩意见。</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"4oi1q-0-0\"><div data-offset-key=\"4oi1q-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"4oi1q-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"5k2sd-0-0\"><div data-offset-key=\"5k2sd-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"5k2sd-0-0\" style=\"font-weight: bold; color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">四、德育教师工作职责</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"9q0td-0-0\"><div data-offset-key=\"9q0td-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"9q0td-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">德育教师是学校专职的德育工作人员，主要负责学校德育课程的教育教学。其岗位职责如下：</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"8c2ga-0-0\"><div data-offset-key=\"8c2ga-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"8c2ga-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">1、自觉学习各项方针政策、时事政治以及德育理论知识，不断提高自身的综合素质。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"93b9v-0-0\"><div data-offset-key=\"93b9v-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"93b9v-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">2、根据德育大纲和学校德育工作计划，认真制定学期的德育辅导计划。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"cbaet-0-0\"><div data-offset-key=\"cbaet-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"cbaet-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">3、认真进行德育课程的教育教学，包括组织一些必须的社会实践活动。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"f8b15-0-0\"><div data-offset-key=\"f8b15-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"f8b15-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">4、积极开展时事政治的教育。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1rrvc-0-0\"><div data-offset-key=\"1rrvc-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1rrvc-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">5、承担重大节日的教育工作。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"dfsiu-0-0\"><div data-offset-key=\"dfsiu-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"dfsiu-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">6、配合班主任加强对个别学生的教育。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bd0rk-0-0\"><div data-offset-key=\"bd0rk-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bd0rk-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">7、负责学生政治思想的考核工作。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1lnlg-0-0\"><div data-offset-key=\"1lnlg-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1lnlg-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">8、完成学校领导交给的其他任务。</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"f6qq4-0-0\"><div data-offset-key=\"f6qq4-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"f6qq4-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"2uphv-0-0\"><div data-offset-key=\"2uphv-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"2uphv-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">五、班主任德育工作职责</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bbn7k-0-0\"><div data-offset-key=\"bbn7k-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bbn7k-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">1、学生思想工作。深入了解分析学生的思想、心理、学习、生活状况，开展思想道德教育，提升学生思想道德境界。针对学生在成长过程中遇到的实际问题，进行教育、引导和援助，帮助学生提高应对挫折、适应工作岗位、融入社会的能力。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"62k4d-0-0\"><div data-offset-key=\"62k4d-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"62k4d-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">2、班级管理工作。组建班委会，制定班级公约和学生自律规范，维护良好的教育教学秩序和生活秩序；客观、公正地做好学生的综合素质评价工作，对学生进行表扬和批评教育，向学校提出奖惩建议；加强安全教育，维护班级和学生安全。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"ejgjm-0-0\"><div data-offset-key=\"ejgjm-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"ejgjm-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">3、组织班级活动。指导班委会、团支部开展工作，引导学生参加有利于健康成长的课外兴趣小组、社团活动、文体活动以及志愿者服务等社会实践活动。根据学校培养目标，针对班级特点，开展形式多样的主题班（团）会活动。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"b0lj0-0-0\"><div data-offset-key=\"b0lj0-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"b0lj0-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">4、职业指导工作。教育、引导学生树立正确的职业理想和职业观念，形成良好的职业道德，提升职业素养与职业生涯规划能力。指导学生根据社会需要和自身特点选择职业发展方向，顺利实现就业、创业或升学。</span></span></div></div><div class=\" bftd-1\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bv99o-0-0\"><div data-offset-key=\"bv99o-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bv99o-0-0\" style=\"color: rgb(34, 34, 34); background-color: rgb(255, 255, 255);\"><span data-text=\"true\">5、沟通协调工作。全面及时了解学生在家庭和社会的表现，帮助、引导家长配合学校做好学生的教育和管理工作。根据学校安排，组织学生参加实习实训活动，并在学生顶岗实习期间，与实习单位共同做好学生的教育和管理工作。</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"6c4on-0-0\"><div data-offset-key=\"6c4on-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"6c4on-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"b5q06-0-0\"><div data-offset-key=\"b5q06-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"b5q06-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"2jq8b-0-0\"><div data-offset-key=\"2jq8b-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"2jq8b-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"1solt-0-0\"><div data-offset-key=\"1solt-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"1solt-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"e0ilr-0-0\"><div data-offset-key=\"e0ilr-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"e0ilr-0-0\"><br data-text=\"true\"></span></div></div><div class=\"bfa-right\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"3bhr7-0-0\"><div data-offset-key=\"3bhr7-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"3bhr7-0-0\"><span data-text=\"true\">腾讯微卡中学</span></span></div></div><div class=\"bfa-right\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"ek43e-0-0\"><div data-offset-key=\"ek43e-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"ek43e-0-0\"><span data-text=\"true\">2020年1月31日</span></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"5f853-0-0\"><div data-offset-key=\"5f853-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"5f853-0-0\"><br data-text=\"true\"></span></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"c3h7i-0-0\" contenteditable=\"false\"><div class=\"bf-media\"><div draggable=\"true\" class=\"bf-image\" style=\"text-align: center;\"><div style=\"position: relative; display: inline-block;\"><img src=\"//wxpublic-1251448646.file.myqcloud.com/school_logo/ed698851252ff8caee95c75b739bb79a.png\" alt=\"ed698851252ff8caee95c75b739bb79a.png\"><div class=\"bf-pre-csize undefined\"></div></div></div></div></div><div class=\"\" data-block=\"true\" data-editor=\"7ca00\" data-offset-key=\"bkpoq-0-0\"><div data-offset-key=\"bkpoq-0-0\" class=\"public-DraftStyleDefault-block public-DraftStyleDefault-ltr\"><span data-offset-key=\"bkpoq-0-0\"><br data-text=\"true\"></span></div></div></div></div>");
//        //附件
//        notifyPushDto.setAttachment("");
//
//
//        ArrayList<Long> deptList = new ArrayList<>();
//        deptList.add(16L);
//        notifyPushDto.setDeptIdList(deptList);
//
//
//
//        this.add(notifyPushDto);
//    }


}
